"""
留言模型
"""
from sqlalchemy import Column, Integer, String, Text, DateTime, Boolean
from sqlalchemy.sql import func
from ..database import Base

class Message(Base):
    """
    留言表模型
    用户留言和咨询管理
    """
    __tablename__ = "messages"
    
    id = Column(Integer, primary_key=True, index=True)
    
    # 留言者信息
    name = Column(String(100), nullable=False, comment="姓名")
    phone = Column(String(50), nullable=False, comment="电话")
    email = Column(String(100), nullable=True, comment="邮箱")
    
    # 留言内容
    subject = Column(String(200), nullable=True, comment="主题")
    message = Column(Text, nullable=False, comment="留言内容")
    
    # 状态管理
    is_read = Column(Boolean, default=False, comment="是否已读")
    is_replied = Column(Boolean, default=False, comment="是否已回复")
    
    # 回复内容
    reply_content = Column(Text, nullable=True, comment="回复内容")
    reply_time = Column(DateTime(timezone=True), nullable=True, comment="回复时间")
    
    # 时间戳
    created_at = Column(DateTime(timezone=True), server_default=func.now(), comment="创建时间")
    updated_at = Column(DateTime(timezone=True), onupdate=func.now(), comment="更新时间")
